﻿/** \file
* \par Subversion URL:
* \$URL: http://planar-rendering.googlecode.com/svn/trunk/frontend/src/Function.cs $
* \version \$Rev: 74 $
* \date    \$Date: 2009-04-20 01:12:01 +0000 (Mon, 20 Apr 2009) $
*/

using System;
using System.Collections.Generic;

namespace Frontend
{
	/// <summary>
	/// An abstract base describing a complex function.
	/// </summary>
	abstract class Function
	{
		/// <summary>The list of ranged settings for this function.</summary>
		public List<Range> ranges = new List<Range>();

		/// <summary>
		/// Set the ranged settings.
		/// </summary>
		/// <param name="gen">The associated generator.</param>
		public virtual void SetRanges(Generator gen)
		{
		}

		/// <summary>
		/// Get the function's description.
		/// </summary>
		/// <returns>The description string.</returns>
		public abstract string GetDescription();
	}
}
